---
title: Client reference
summary: Complete reference for every contract operation this repository calls.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-09-22
---

# Client reference

This page documents every operation of `` `FaxService`† `` that repository source actually calls through `FaxServiceSoapClient`.

---

## Send FaxInfo FaxJob

Submits a fax job — an attachment path and recipient details — to the remote `` `FaxService`† `` for delivery; the caller receives no acknowledgement of success.

| Field | Value |
| --- | --- |
| **Operation** | `Send` |
| **SOAP action** | `http://www.saif.com/Send` |
| **Proxy member** | `void Send(FaxInfo FaxJob)` |
| **Input message** | `FaxInfo` |
| **Output message** | None — one-way from the caller's perspective; `SendResponse` carries no members |
| **Declared faults** | None declared |
| **Called by** | `SAIF.Services.WCF.Services.LegacyProxies.FaxServiceProxy.SendFax(FaxRecipient message, string fullFilePath)` (`src\WCF\SAIF.Services.WCF.Host\Services\LegacyProxies\FaxServiceProxy.cs:41`) |
| **Source** | `src\WCF\SAIF.Services.WCF.Host\Services\LegacyProxies\FaxServiceProxy.cs:41` |

### Input message

| Part | Type | Required | Bound from | Purpose |
| --- | --- | --- | --- | --- |
| `Attachment` | `s:string` | Not stated in the WSDL | `fullFilePath` — a temporary file path built by the caller | The remote service reads the fax content from this path rather than receiving it as content* |
| `ToFaxNumber` | `s:string` | Not stated in the WSDL | `message.FaxNumber` | Recipient fax number |
| `ToName` | `s:string` | Not stated in the WSDL | `message.RecipientName` | Recipient name |
| `CoverSheetNote` | `s:string` | Not stated in the WSDL | Not populated at this call site | Left unset — three of the six `FaxInfo` fields are never populated |
| `ToCompanyName` | `s:string` | Not stated in the WSDL | Not populated at this call site | Left unset |
| `ToVoiceNumber` | `s:string` | Not stated in the WSDL | Not populated at this call site | Left unset |

### Output message

`SendResponse` is an empty complex type; the operation returns no data beyond a successful SOAP response. The calling code captures no return value, status, or job identifier.

| Part | Type | Consumed by the caller | Notes |
| --- | --- | --- | --- |
| — | — | No | `SendResponse` declares no parts |

### Faults

| Fault | Surfaces as | Handled at the call site |
| --- | --- | --- |
| None declared | `FaultException`, `FaultException<T>`, `CommunicationException`, `TimeoutException` | Not handled — the exception propagates unchanged to `FaxService.SendFax`, which itself has no try/catch around the call |

### Call site

```csharp
webService = new FaxServiceSoapClient(binding, new EndpointAddress(serviceUrl));
webService.Send(faxInfo);
```

| Aspect | Finding |
| --- | --- |
| Invocation frequency | Once per recipient, inside a `foreach` over `config.Recipients` |
| Result cached | No |
| Timeout at this call site | None — binding defaults apply |
| Retry at this call site | None |

### Notes
- A multi-recipient fax is not atomic: recipients already sent before a failing recipient cannot be identified afterward, because `Send` returns no identifier.
- The `foreach` in the calling `FaxService.SendFax` operation aborts on the first failing recipient, so later recipients are never attempted*.

---

## Coverage checklist

| Operation | Documented section | Called by |
| --- | --- | --- |
| `Send` | [`Send FaxInfo FaxJob`](#send-faxinfo-faxjob) | `SAIF.Services.WCF.Services.LegacyProxies.FaxServiceProxy.SendFax` |

## Related documentation
- [Client index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Contract](contract.md)
- [Operation map](operation-map.md)
- [Consumption](consumption.md)
- [Dependencies](dependencies.md)
- [Tech debt](tech-debt.md)

> **Note:** Statements marked with `†` are derived from dependency library documentation via the Legends CLI. Statements marked with `*` were inferred from code structure or contextual evidence. Statements marked with `**` could not be confirmed; treat as unknown until verified.

## Sources
- `src\WCF\SAIF.Services.WCF.Host\Services\LegacyProxies\FaxServiceProxy.cs`
- `src\WCF\SAIF.Services.WCF.Host\Services\FaxService.cs`
- `src\WCF\SAIF.Services.WCF.Host\Service References\Legacy.Fax\faxservice.wsdl`
